<!DOCTYPE html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>Animation with neutral keyframe is responsive to change in underlying style</title>
  <link rel="help" href="https://www.w3.org/TR/web-animations-1/#the-effect-value-of-a-keyframe-animation-effect">
  <script src="/resources/testharness.js"></script>
  <script src="/resources/testharnessreport.js"></script>
  <script src="responsive-test.js"></script>
</head>
<body></body>
<script type="text/javascript">
  promise_test(async t => {
    const responsiveTest =
        createResponsiveTest(t, {
          property: 'boxShadow',
          from: 'green 20px 20px 20px 20px',
          to: 'inherit',
        });
    await responsiveTest.ready;
    responsiveTest.inheritedValue = 'blue 0px 0px 0px 0px';
    responsiveTest.assertResponsive([
      {at: 0.25, is: 'rgb(0, 96, 64) 15px 15px 15px 15px'},
      {at: 0.75, is: 'rgb(0, 32, 191) 5px 5px 5px 5px'},
    ]);
    responsiveTest.inheritedValue = 'yellow 100px 100px 100px 100px';
    responsiveTest.assertResponsive([
      {at: 0.25, is: 'rgb(64, 160, 0) 40px 40px 40px 40px'},
      {at: 0.75, is: 'rgb(191, 223, 0) 80px 80px 80px 80px'},
    ]);
  }, 'Animating to inherit responsive to change in style');

  promise_test(async t => {
    const responsiveTest =
        createResponsiveTest(t, {
          property: 'boxShadow',
          from: 'inherit',
          to: 'green 20px 20px 20px 20px',
        });
    await responsiveTest.ready;
    responsiveTest.inheritedValue =
        'blue 0px 0px 0px 0px, yellow 100px 100px 100px 100px';
    responsiveTest.assertResponsive([
      {
        at: 0.25,
        is: 'rgb(0, 32, 191) 5px 5px 5px 5px, ' +
            'rgba(255, 255, 0, 0.75) 75px 75px 75px 75px'
      },
      {
        at: 0.75,
       is: 'rgb(0, 96, 64) 15px 15px 15px 15px, ' +
           'rgba(255, 255, 0, 0.25) 25px 25px 25px 25px'
      },
    ]);
    responsiveTest.inheritedValue = 'yellow 100px 100px 100px 100px';
    responsiveTest.assertResponsive([
      {at: 0.25, is: 'rgb(191, 223, 0) 80px 80px 80px 80px'},
      {at: 0.75, is: 'rgb(64, 160, 0) 40px 40px 40px 40px'},
    ]);
  }, 'Animating from inherit responsive to change in style');
</script>
